<?php
$isReloadable = false;
require_once("../../../pers/inc.config.php");
require_once('../../_inc/inc.session.php');
require_once('../../_inc/funct.html.php');

$aCamForm = array();
require("_inc/const.campiUtente.php");

if (reqVar('azione') == 'salva') {
	$msgPag = confIns($aCamForm);
} 
reqDef('lingua','it');
$sqlSel = "SELECT r.* FROM rgl_ruoli r ORDER BY r.cod_ruolo";
$objDB->exec($sqlSel);
while($aRow = $objDB->fetch()) {
	reqDef('cbx_ruolo_'.$aRow['id_ruolo'],'');
	reqDef('cod_ruolo_'.$aRow['id_ruolo'],$aRow['cod_ruolo']);
	reqDef('des_ruolo_'.$aRow['id_ruolo'], $aRow['descr']);
}


testaHtml('Gestione applicazione', $msgPag, 'gest');
?>
<table border="0" cellpadding="3" cellspacing="1" width="100%" align='center'>
   <tr>
      <td class="cmd1" align="right">
         &nbsp;&nbsp;&nbsp;
         <a class="cmd1" href="javascript:document.frm1.submit();" >salva</a>
			<? echo cmdTorna('torna'); ?>
      </td>
   </tr>
</table>
<?
echo getHtmlForm('frm1','',array('enctype'=>true));
echo getHtmlHidden('azione','salva');
echo getHtmlHidden('xsn',XSN);
?>
<table class="tab1" border="0" cellpadding="3" cellspacing="1" width="100%" align='center'>
	<?=getHtmlRigaRif();?>
   <tr>
      <td class="tit1" colspan='20' align='center'>Utente</td>
   </tr>
<?
echo getHtmlCampiForm($aCamForm);
?>
</table>
<table border="0" cellpadding="3" cellspacing="1" width="100%" align='center'>
   <tr>
      <td class="lab1" align="center" colspan='3'>Ruoli</td>
   </tr>
<?php 
foreach($_REQUEST as $nX => $vX) {
	if (substr($nX,0,10)!='cbx_ruolo_') continue;
	$idR = substr($nX,10);
?>
   <tr>
      <td class="txt1" align="center" width='1%'><?php echo getHtmlCheckBox('cbx_ruolo_'.$idR, 'S');?></td>
      <td class="txt1" align="left" width='10%'>
      	<?php echo getHtmlHidden('cod_ruolo_'.$idR);echo reqVar('cod_ruolo_'.$idR)?>
      </td>
      <td class="txt1" align="left" width='89%'>
      	<?php echo getHtmlHidden('des_ruolo_'.$idR);echo reqVar('des_ruolo_'.$idR)?>
      </td>
   </tr>
<?php 
}
?>
</table>
<?
echo "</form>\n";
codaHtml();
exit();
function confIns($aCamForm) {
	global $objDB;
	$msg = '';
	$_REQUEST['cod_utente'] = strtolower(trim(reqVar('cod_utente')));
	if (reqVar('cod_utente')=='') {
		$msg .= _t("Codice obbligatorio")."<br>";
	}
	if (preg_match("/[^-_a-z0-9]/",reqVar('cod_utente'))) {
		$msg = _t("Codice '%s' puo' contenere solo lettere numeri '-' e '_'",reqVar('cod_utente'))."<br>";
	}
	$intestaz1 = trim(reqVar('intestaz1'));
	if (trim(reqVar('cognome'))=='') {
		$msg .= "Cognome obbligatorio<br>";
	}
	if (trim(reqVar('password'))=='') {
		$msg .= "Password obbligatoria<br>";
	}
	if (reqVar('e_mail')!='' && !verifEmail(reqVar('e_mail'))) {
		$msg .= "Indirizzo e-mail non conforme<br>";
	}
	$sqlSel = "SELECT id_utente FROM rgl_utenti " .
			" WHERE cod_utente = '".reqVarAS('cod_utente')."'";
	$objDB->exec($sqlSel,'insIst');
	$aRow = $objDB->fetch('insIst');
	if ($aRow) {
		$msg .= _t("Codice utente gia' esistente")."<br>";
	}
	if ($msg != '') {
		return $msg;
	}
	$sSqlIns = "INSERT INTO rgl_utenti SET password = 'X".trim(reqVarAS('password'))."'";
	foreach($aCamForm as $rX => $aRX) {
		foreach($aRX as $jX => $aCX) {
			if ($aCX[0]=='password') continue;
			$sSqlIns .= ", ".$aCX[0]." = '".reqVarAS($aCX[0])."' ";
		}
	}
	$objDB->exec($sSqlIns,'insRec');
	$newId = $objDB->lastInsertId('insRec');
	
	foreach($_REQUEST as $nX => $vX) {
		if (substr($nX,0,10)!='cbx_ruolo_') continue;
		if ($vX != 'S') continue;
		$idR = substr($nX,10);
		$sSqlUpd = "INSERT INTO rgl_utenti_ruoli SET id_utente = ".$newId
			.", id_ruolo = $idR";
		$objDB->exec($sSqlUpd);
	}

	header("Location: ".urlTorna("utente '".reqVar('cod_utente')."' inserito"));
	exit();
}
?>